It is generally desirable to be able to write various hearing aid associated data to a persistent data space within the hearing aid during its normal operation. A hearing aid provided with such a data writing capability is able to record or log information within the persistent data space about various hearing aid associated variables or parameters such as a patient's utilisation pattern of user-selectable listening programs, volume control settings, sound or listening environment information based on input sound pressure level statistics etc. Furthermore, the data writing capability also allows the hearing aid's processor to execute slowly converging adaptive signal processing algorithms and regularly store current values of variables associated with the adaptive algorithm. This latter feature is particularly advantageous in connection with algorithms which have very small adaptation rates. Such slowly adapting algorithms may be unable to converge during a typical daily utilisation time of the hearing aid, i.e. a time period somewhere between 6–12 hours. One example of such a slowly converging algorithm, relating to maintaining long-term sensitivity balance between a pair of microphones, is disclosed in the present applicant's co-pending application PA 2000 01407.
Writing data to the persistent data space during normal operation of the hearing aid poses, however, a significant problem that has not been properly addressed by the prior art: in existing hearing aid designs, the user is allowed to remove or interrupt the normal power source, often a single 1.3 Volt Zinc-Air battery, at arbitrary instants in time. Simply opening a battery compartment of the hearing aid or actuating a mechanical power switch may accomplish the interruption. If a hearing aid processor has initiated a data write procedure in the persistent data space when such an uncontrollable power failure occurs, these data will inevitably be corrupted.
Accordingly, handling and securing correct writing of data to the persistent data space during normal operation of the hearing aid is more difficult than the well-known procedure of writing data to the persistent data space in the initial fitting situation in a hearing aid dispenser's office. In the latter situation, a connected host programming system can easily be programmed to secure that only uncorrupted data are loaded into the hearing aid because the fitting program can easily be adapted to confirm that down-loaded data are correct, e.g. by using a simple write, read-back and compare procedure.
A hearing aid with a dynamic data logging capability is disclosed in U.S. Pat. No. 4,972,487 in the form of a digitally programmable hearing aid that includes a data logging circuit and provides a number of different user-selectable listening programs. The data logging circuit is utilised to record log-data relating to how many times the user switches between the listening programs and a utilisation time of each of the listening programs. The recorded log-data are stored in a battery backed-up RAM area to allow the logged-data to be retained during battery supply interruptions in the hearing aid. A bi-directional serial programming interface is furthermore included in the disclosed hearing aid making it possible for a host programming system, typically located in a dispenser's office, to read and display the logged-data. However, the patent specification contains no suggestion of how to detect and/or correct data errors to secure that the logged data are valid.
DE 197 34 723 to Siemens Audiologische Technik discloses a Digital Signal Processing(DSP) hearing aid adapted to perform an internal detection and/or correction of errors in data storage and data transmission operations between a secondary storage area and a working memory area. The proposed error detection and/or correction schemes are based on well-known checksum, parity or Hamming coding techniques. However, the proposed application of Hamming coding to detect and correct data errors is costly in terms of memory overhead and processing power and/or in terms of dedicated hardware such as data test elements adapted to perform the necessary computations on the data. Furthermore, Hamming coding can typically only detect and correct a minor parts of the bits in a corrupted set of data and will therefore not be able to correct errors within a completely corrupted data set which may result from uncontrollable power failures in the power supply of the hearing aid.
Accordingly, there is a need to provide a simple, cost-effective and reliable method of writing and storing values of various hearing aid associated variables in a persistent or retained data space, typically arranged inside an EEPROM device, of the hearing aid during normal operation of the aid.